<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>其他类型转换成boolean</title>
</head>
<body>

<!--
其他类型转换成boolean
1. number 类型转换为 boolean 类型：0和NaN转为false，其他的数字转为true
2. string 类型转换为 boolean 类型：空字符串转为false，其他的字符串转为true
3. null类型转换为 boolean 类型是 false
4. undefined 转换为 boolean 类型是 false
-->
<script>
    let flag = undefined;
    if(flag){
        alert("转为true");
    }else{
        alert("转为false")
    }
</script>

<script>
    // 在 Java 中使用字符串前，一般都会先判断字符串不是null，
    // 并且不是空字符才会做其他的一些操作，JavaScript也有类型的操作
    let str = "abc";
    //健壮性判断
    if(str != null && str.length > 0){
        alert("转为true");
    }else {
        alert("转为false");
    }
    //但是由于 JavaScript 会自动进行类型转换，所以上述的判断可以进行简化
    let str2 = "abc";

    //健壮性判断
    if(str){
        alert("转为true");
    }else {
        alert("转为false");
    }

</script>



</body>
</html>